package la.foton.homebroker.integracao.megabolsa.dto;

import java.math.BigDecimal;
import java.util.Date;

import la.foton.homebroker.negocio.entidade.Investidor;
import la.foton.homebroker.negocio.entidade.Ordem;
import la.foton.homebroker.negocio.entidade.enumeracoes.TipoOperacao;

public class ExecucaoOrdemDTO
{
	private long codigoCorretora;
	private String cpfInvestidor;
	private String codigoAcao;
	private TipoOperacao tipoOperacao;
	private int quantidade;
	private BigDecimal preco;
	private Date dataPregao;

	public static ExecucaoOrdemDTO criaSolicitacao(Ordem ordem, Investidor investidor)
	{
		ExecucaoOrdemDTO dto = new ExecucaoOrdemDTO();
		dto.setCodigoCorretora(investidor.getCorretora().getCodigo());
		dto.setCodigoAcao(ordem.getAcao().getCodigo());
		dto.setCpfInvestidor(investidor.getCpf());
		dto.setTipoOperacao(ordem.getTipoOperacao());
		dto.setQuantidade(ordem.getQuantidadeSolicitada());
		dto.setPreco(ordem.getPreco());
		dto.setDataPregao(ordem.getDataPregao());
		return dto;
	}

	public long getCodigoCorretora()
	{
		return codigoCorretora;
	}

	public void setCodigoCorretora(long codigoCorretora)
	{
		this.codigoCorretora = codigoCorretora;
	}

	public String getCpfInvestidor()
	{
		return cpfInvestidor;
	}

	public void setCpfInvestidor(String cpfInvestidor)
	{
		this.cpfInvestidor = cpfInvestidor;
	}

	public String getCodigoAcao()
	{
		return codigoAcao;
	}

	public void setCodigoAcao(String codigoAcao)
	{
		this.codigoAcao = codigoAcao;
	}

	public TipoOperacao getTipoOperacao()
	{
		return tipoOperacao;
	}

	public void setTipoOperacao(TipoOperacao tipoOperacao)
	{
		this.tipoOperacao = tipoOperacao;
	}

	public int getQuantidade()
	{
		return quantidade;
	}

	public void setQuantidade(int quantidade)
	{
		this.quantidade = quantidade;
	}

	public BigDecimal getPreco()
	{
		return preco;
	}

	public void setPreco(BigDecimal preco)
	{
		this.preco = preco;
	}

	public Date getDataPregao()
	{
		return dataPregao;
	}

	public void setDataPregao(Date dataPregao)
	{
		this.dataPregao = dataPregao;
	}
}
